home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 3 / CU Amiga Magazine's Super CD-ROM 03 (1996)(EMAP Images)(GB)(Track 1 of 3)[!][issue 1996-09].iso / misc / datatypes / picturedt-v43 / install next >
Text File  |  1996-07-18  |  18KB  |  380 lines

  1. ;********************************************************************************
  2. ;    __  __ __      ____      ____           __           __                 
  3. ;   / / / // /__   /___ \    / __ \        _/ /_        _/ /_               
  4. ;  / / / // // /_   __/ /   / / / /______ /  __/______ /  __/__  __ ______ ______
  5. ; / / / //__  __/  /_  /   / / / // __  / / /  / __  / / /   \ \/ // __  // ____/
  6. ;/ /_/ /   / /   ___/ /   / /_/ // __  / / /_ / __  / / /_    \  // /_/ // __/_
  7. ;\____/   /_/   /____/   /_____//_/ /_/ /___//_/ /_/ /___/    / // ____//_____/
  8. ;                                                            /_// /    
  9. ; BETA                                                         /_/ 
  10. ; $VER: V43DT_Installer 1.61 (July-09-1996)
  11. ; Installer by Robert C. Reiswig ©1995, 1996
  12. ;
  13. ; If you wish to use any part of this installer you must ask. May not be 
  14. ; integrated/placed into any other package. Changes, suggestions or problems:
  15. ; V43DT@vgr.com or rcr@netcom.com
  16. ;--------------------------------------------------------------------------------
  17. ;
  18. ;********************************************************************************
  19. (if (= @user-level 0) (set @user-level 1))
  20. (set whereback "SYS:Storage")
  21. (set dtdest (tackon whereback "Datatypes"))
  22. (set cksum 0)
  23. (set ncg 0)
  24. (set cybergfx 0)
  25.  
  26. ;********************************************************************************
  27. ; Read Needed System information
  28. ;********************************************************************************
  29. (set lan 1)
  30. (if (> (exists ("env:Language")) 0)
  31.   (if (= "deutsch" (getenv "Language")) (set lan 0) )
  32. )
  33.  
  34. ;********************************************************************************
  35. ;English Information  
  36. ;********************************************************************************
  37. (set #about "Welcome to the V43 24Bit Datatypes for use on CyberGraphX and OCS/ECS/AGA systems only.\n\nThe picture.datatype V43 is Copyright 1995-96 by Ralph Schmidt. Additional libs/changes by Frank Mariak. All sub datatypes by Matthias Scheler.\n\nThe V43DT uses 'Tower JPEG Codec Class for JPEG support', Copyright (c)1994 Christoph Feck, TowerSystems.\n\nThis will install the V43DT & jpeg_cdc DTs, update & backup (if wanted) the currently installed DTs.")
  38. (set #no_jpeg_cdc "\nThe V43DT uses the 'Tower JPEG Codec Class for JPEG support', Copyright (c)1994 Christoph Feck, TowerSystems.\n\nThe installer could not find the '/jpeg_cdc' directory. The codec and classes along with the needed tower.library can not be installed.\n\nYour archive my be bad or incomplete.\n\nThe V43DT may not work correctly when trying to display JPEG pictures.") 
  39. (set #cybergfx? "\nWhat type of system are you installing the\nV43 24Bit Datatypes on?\n")
  40. (set #whereDTs "In what directory are the V43 Datatypes located? (Not the 'Datatypes' dir itself, 1 level up, ie 'Classes'.) If they aren't installed, select where you wish to install them. (Default: 'SYS:classes'.)")
  41. (set #wherelibs "Where are your CyberGraphX libraries located? If they aren't installed, select where you wish to install them.")
  42. (set #dtdirnotfound "\nThe 'Datatypes' directory was not found. Please select where you have the V43 24bit 'Datatypes' directory located. Do not select the 'Datatypes' directory itself, but one directory level up. If you have the datatypes in 'SYS:classes/datatypes' you would pick 'SYS:classes'.\n\n'datatypes' directory not found in:\n\n") 
  43. (set #whereback "Where would you like to BackUp the Datatypes? If a directory Called 'Datatypes' is not there one will be created. (Default is 'SYS:Storage')")
  44. (set #whattodo "\nWould you like to backup the Datatypes Currently installed on your system that will be updated?\n")
  45. (set #backupdts " BackUp Current Datatypes")
  46. (set #foundcybergfxlib "\nYou had selected that you were installing the V43 Datatype on a OCS/ECS/AGA system.\n\nThe installer has found 'libs:cybergraphics.library'.\n\nOn OCS/ECS/AGA systems you only need to have 'cyberncg.library' installed.\n\nWould you like to remove 'libs:cybergraphics.library'?")
  47. (set #foundcyberncglib "\nYou had selected that you were installing the V43 Datatype on a CyberGraphX system.\n\nThe installer has found 'libs:cyberncg.library'.\n\nOn CyberGraphX systems you only need to have 'cybergraphics.library' installed.\n\nWould you like to remove 'libs:cyberncg.library'?")
  48. (set #backup1 "\nThe Datatypes were Backed-up to:\n")
  49. (set #backup2 "The files that were backed-up into the 'Classes' & 'libs' directories will have <ver.rev> appended to the file name.\n\nThe 'Devs:' files that were backed-up will have the <checksum> of the file appended to the file name.")
  50. (set #foundjpeg "\nThe installer has found that you have a 'JPEG.datatype' installed.  This will create a conflict with the 'JFIF.datatype' that the V43 picture.datatype uses for decoding JPEG pictures.\n\n Is it ok to move the JPEG.datatype to:\n\n")
  51. (set #Skip "Skip")
  52. (set #Delete "Delete")
  53. (set #movejpeg "Move JPEG DT")
  54. (set #tools "\nWhat V43 Datatype Tools do you wish to install?\n")
  55. (set #cyberprefs " PCDT - Prefs for CyberGraphX Datatype")
  56. (set #Where "Where do you wish to install ")
  57. (set #wheredtprefs "PCDT? If there is a copy already there a backup of it will be created!")
  58.  
  59. ;********************************************************************************
  60. ; German Information
  61. ;********************************************************************************
  62. (if (= LAN 0)
  63. (
  64.  (set #about "Willkommen zur V43 24Bit Datatype Installation für CyberGraphX und OCS/ECS/AGA Rechner.\n\nDer V43 picture.datatype ist (c) 1995-96 Ralph Schmidt. Zusätzliche Libraries/Änderungen sind von F. Mariak. Alle Subdatatypen sind von M.Scheler.\n\nDiese Software benutzt die Tower JPEG Codec Class zur JPEG Dekodierung, Copyright (c)1994 Christoph Feck, TowerSystems.\n\nDieses Skript installiert den V43DT, als auch die JPG Codec Class  und erneuert bzw. sichert (falls gewünscht) die momentan installieren DTs.")
  65.  (set #whereDTs "In welchem Verzeichnis befinden sich die V43 Datatypes ? (Nicht das 'Datatypes' Verzeichnis selbst, sondern die Ebene darüber.) Wenn Sie nicht bereits installiert sind, geben Sie an, wohin Sie sie installieren wollen. (Vorgegeben ist 'SYS:classes'.)")
  66.  (set #wherelibs "Wo befinden sich die CyberGraphX Libraries ? Wenn sie nicht installiert sind, wählen Sie, wohin sie installiert werden sollen.")
  67.  (set #cybergfx? "\nAuf was für einem System wollen sie die\nV43 24Bit Datatypes installieren?\n")
  68.  (set #dtdirnotfound "\nDas 'Datatypes' Verzeichnis wurde nicht gefunden. Bitte geben Sie an wo das  V43 24bit 'Datatypes' Verzeichnis liegt. Bitte geben Sie nicht das 'Datatypes' Verzeichnis selbst, sondern eine Verzeichnisebene höher an. Wenn sich die Datatypes in 'SYS:classes/datatypes' befinden, würden Sie 'SYS:classes' angeben.\n\n'datatypes' Verzeichnis nicht gefunden in:\n\n") 
  69.  (set #whereback "Wohin sollen die alten Datatypes gesichert werden? Wenn ein Verzeichnis namens 'Datatypes' nicht existiert, wird es erstellt. (Vorgegeben ist 'SYS:Storage')")
  70.  (set #whattodo "\nWollen Sie die Datatypes sichern, die momentan installiert sind und nun durch neue überschrieben werden ?\n")
  71.  (set #backupdts " Momentane Datatypes sichern")
  72.  (set #backup1 "\nDie Datatypes wurden gesichert nach:\n")
  73.  (set #backup2 "Den Dateien, die in die 'Classes' & 'libs' Verzeichnisse gesichert wurden, wird die Endung <ver.rev> angehängt.\n\nDie gesicherten 'Devs:' Dateien bekommen die Endung <checksum> angehängt.")
  74.  (set #foundcybergfxlib "\nSie haben die Installation auf einem reinen OCS/ECS/AGA System gewählt.\n\nEs wurde allerdings in libs: eine cybergraphics.library gefunden.\n\nAuf reinen OCS/ECS/AGA Systemen wird diese nicht benötigt.\n\nWollen Sie sie entfernen lassen ?")
  75.  (set #foundcyberncglib "\nSie haben die Installation auf einem CyberGraphX System gewählt.\n\nEs wurde allerdings in libs: eine cyberncg.library gefunden.\n\nAuf CyberGraphX Systemen wird diese nicht benötigt.\n\nWollen Sie sie entfernen lassen ?")
  76.  (set #movejpeg "Verschiebe JPEG DT")
  77.  (set #tools "\nWelche V43 Datatype Zusatzprogramme wollen Sie installieren?\n")
  78.  (set #cyberprefs " PCDT - Einstellungsprogramm für den V43 Datatype")
  79.  (set #Where "Wählen Sie bitte den Installationpfad für ")
  80.  (set #wheredtprefs "PCDT! Wenn dort bereits eine Version existiert, wird diese gesichert!")
  81. )
  82. )
  83.  
  84. ;********************************************************************************
  85. ; Welcome
  86. ;********************************************************************************
  87. (message #about)
  88. (welcome)
  89.  
  90. ;********************************************************************************
  91. ; Ask If installing on CyberGraphX system.
  92. ;********************************************************************************
  93. (if (> (exists ("libs:cybergraphics.library")) 0) (set cybergfx 1) )
  94.  
  95. (set cybergfx (askchoice (choices "OCS/ECS/AGA" "CyberGraphX"
  96.                      (prompt #cybergfx?)
  97.                      (help   #cybergfx?)
  98.                        (default cybergfx)
  99.                      )
  100.               )
  101. )
  102.  
  103. ;********************************************************************************
  104. ; Ask Where the Current DTs are and check for Datatypes dir.
  105. ;********************************************************************************
  106. (set whereDTs "SYS:Classes")
  107.  
  108. (procedure getdir
  109.   (set whereDTs  (askdir (prompt #whereDTs)
  110.                          (help   #whereDTs)
  111.                          (default whereDTs) 
  112.              )
  113.   )
  114. )
  115.  
  116. (getdir)
  117.  
  118. (while (= (exists (tackon whereDTs "Datatypes")) 0) 
  119.   (
  120.     (message (cat #dtdirnotfound "'" whereDTs "'"))
  121.     (getdir)   
  122.   )
  123. )
  124.  
  125. ;*******************************************************************
  126. ;  ASK where cybergfx libs are
  127. ;*******************************************************************
  128. (set wherelibs   (askdir (prompt #wherelibs)
  129.              (help   #wherelibs)
  130.                   (default "SYS:Libs")
  131.          )
  132. )
  133.  
  134. ;********************************************************************************
  135. ; Ask to Backup the Curreny DTs
  136. ;********************************************************************************
  137. (set ja (askoptions   (choices #backupdts)
  138.                        (prompt #whattodo)
  139.                       (help   #whattodo)
  140.                          (default 1)
  141.     )
  142. )
  143.  
  144. ;********************************************************************************
  145. ; If Backup, ask where and make dirs
  146. ;********************************************************************************
  147. (if (= ja 1)
  148.  (
  149.   (set whereback (askdir (prompt #whereback)
  150.                          (help   #whereback)
  151.                          (default whereback) 
  152.              )
  153.   )
  154.  
  155.   (set dtdest (tackon whereback "Datatypes"))
  156.   (if (< (exists dtdest) 2)  (makedir dtdest (infos)) )
  157.   (if (< (exists (tackon dtdest "classes")) 2)  (makedir (tackon dtdest "classes") (infos)) )
  158.   (if (< (exists (tackon dtdest "classes/codecs")) 2)  (makedir (tackon dtdest "classes/codecs") (infos)) )
  159.   (if (< (exists (tackon dtdest "classes/datatypes")) 2)  (makedir (tackon dtdest "classes/datatypes") (infos)) ) 
  160.   (if (< (exists (tackon dtdest "devs")) 2)  (makedir (tackon dtdest "devs") (infos)) )
  161.   (if (< (exists (tackon dtdest "devs/datatypes")) 2)  (makedir (tackon dtdest "devs/datatypes") (infos)) ) 
  162.   (if (< (exists (tackon dtdest "libs")) 2)  (makedir (tackon dtdest "libs") (infos)) )
  163.  
  164.  )
  165. )
  166.  
  167. (set @default-dest (tackon whereback "Datatypes"))
  168.  
  169. ;********************************************************************************
  170. ; Backup Procedure 
  171. ;******************************************************************************** 
  172. (procedure backup
  173.  (if (> (exists (tackon WHERE @each-name)) 0)
  174.   (
  175.    (set vernum1 (getversion (tackon WHERE @each-name)) )
  176.    (set ver1 (/ vernum1 65536))
  177.    (set rev1 (- vernum1 (* ver1 65536) ) )
  178.    (set verrev (cat ver1 "." rev1))
  179.  
  180.    (if (= cksum 1)
  181.      (
  182.        ;(working "working")
  183.        (set sum (getsum (tackon WHERE @each-name) ) ) 
  184.        (if (< sum 0) (set sum (* sum -1)) )
  185.        (set verrev sum)
  186.      )
  187.    )
  188.  
  189.    (set file-error (copyfiles (source (tackon WHERE @each-name)
  190.                                       (dest TO)
  191.                                       (newname (cat @each-name "." verrev))
  192.                                       (infos)
  193.                                       (optional "nofail")
  194.                               )              
  195.                    )   
  196.    )
  197.  
  198.   )
  199.  )
  200. )
  201.  
  202. ;********************************************************************************
  203. ; Check for devs:datatypes/gif.datatype 
  204. ;******************************************************************************** 
  205. (if (exists "devs:datatypes/jpeg") 
  206.  (
  207.    (set jpeg (askbool (prompt (cat #foundjpeg (tackon whereback "Datatypes")) )
  208.                (help   (cat #foundjpeg (tackon whereback "Datatypes")) )
  209.                       (choices #movejpeg #Skip)
  210.          )
  211.    )
  212.  
  213.    (if (= jpeg 1) 
  214.     (
  215.       (set dtdest (tackon whereback "Datatypes"))
  216.       (if (< (exists (tackon dtdest "classes")) 2)  (makedir (tackon dtdest "classes") (infos)) )
  217.       (if (< (exists (tackon dtdest "classes/datatypes")) 2)  (makedir (tackon dtdest "classes/datatypes") (infos)) ) 
  218.       (if (< (exists (tackon dtdest "devs")) 2)  (makedir (tackon dtdest "devs") (infos)) )
  219.       (if (< (exists (tackon dtdest "devs/datatypes")) 2)  (makedir (tackon dtdest "devs/datatypes") (infos)) ) 
  220.      
  221.       (set @each-name "jpeg")
  222.       (set WHERE "devs:datatypes")  (set TO (tackon dtdest "devs/datatypes"))  
  223.       (set cksum 1) (backup) (set cksum 0) 
  224.  
  225.       (delete "devs:datatypes/jpeg")
  226.       (delete "devs:datatypes/jpeg.info") 
  227.  
  228.     )  
  229.    )
  230.  
  231.  )
  232. )
  233.  
  234. ;********************************************************************************
  235. ; Look in Archive, if the File to be copied over is already there & it is ok to 
  236. ; back-up.. then Back-up file with <filename>.<ver.rev> OR <filename>.<checksum>
  237. ;******************************************************************************** 
  238. (if (> (exists "/jpeg_cdc") 0)
  239.  (
  240.    (foreach "/jpeg_cdc/classes" "#?.class"
  241.     (
  242.       (set WHERE whereDTs)  (set TO (tackon dtdest "classes")) 
  243.       (if (= ja 1) (backup) )
  244.       (copylib (source (tackon "/jpeg_cdc/classes" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  245.     )
  246.    )
  247.  
  248.    (foreach "/jpeg_cdc/classes/codecs" "#?.codec"
  249.     ( 
  250.       (set WHERE (tackon whereDTs "codecs"))  (set TO (tackon dtdest "classes/codecs"))  
  251.       (if (= ja 1) (backup) )
  252.       (copylib (source (tackon "/jpeg_cdc/classes/codecs" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  253.     )
  254.    )
  255.  
  256.    (foreach "/jpeg_cdc/libs" "#?.library"
  257.     ( 
  258.       (set WHERE wherelibs)  (set TO (tackon dtdest "libs")) 
  259.       (if (= ja 1) (backup) )
  260.       (copylib (source (tackon "/jpeg_cdc/libs" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  261.     )
  262.    )
  263.  )
  264.  
  265.  (message #no_jpeg_cdc)
  266. )  
  267.  
  268.  
  269.  (foreach "classes/datatypes" "#?.datatype"
  270.   ( 
  271.     (set WHERE (tackon whereDTs "datatypes"))  (set TO (tackon dtdest "classes/datatypes")) 
  272.     (if (= ja 1) (backup) ) 
  273.     (copylib (source (tackon "classes/datatypes" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  274.   )
  275.  )
  276.  
  277.  (foreach "devs/datatypes" "~(#?.info)"
  278.   ( 
  279.     (set WHERE "devs:datatypes")  (set TO (tackon dtdest "devs/datatypes"))  
  280.     (set cksum 1)    (if (= ja 1) (backup) )    (set cksum 0) 
  281.     (copyfiles (source (tackon "devs/datatypes" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  282.   )
  283.  )
  284.  
  285.  
  286. (if (= cybergfx 0)
  287.  (
  288.   (set @each-name "cyberncg.library")
  289.   (set WHERE wherelibs)  (set TO (tackon dtdest "libs")) 
  290.   (if (= ja 1) (backup) )
  291.   (copylib (source (tackon "libs" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  292.  
  293.   (if (> (exists ("libs:cybergraphics.library")) 0)
  294.     (
  295.      (set found (askbool (prompt #foundcybergfxlib)
  296.                          (help   #foundcybergfxlib)
  297.                          (choices #Delete #Skip)
  298.             )
  299.      )
  300.      (if (= found 1) (delete "libs:cybergraphics.library") )  
  301.     ) 
  302.   )
  303.  )
  304.  
  305.  
  306.  (
  307.   (set @each-name "cybergraphics.library")
  308.   (set WHERE wherelibs)  (set TO (tackon dtdest "libs")) 
  309.   (if (= ja 1) (backup) )
  310.   (copylib (source (tackon "libs" @each-name)) (dest WHERE) (optional "nofail") (infos) ) 
  311.  
  312.   (if (> (exists ("libs:cyberncg.library")) 0)
  313.     (
  314.      (set found (askbool (prompt #foundcyberncglib)
  315.                          (help   #foundcyberncglib)
  316.                          (choices #Delete #Skip)
  317.             )
  318.      )
  319.      (if (= found 1) (delete "libs:cyberncg.library") )  
  320.     ) 
  321.   )
  322.  )
  323.  
  324. )
  325.  
  326. ;********************************************************************************
  327. ;  Tools to install, ie prefs 
  328. ;********************************************************************************
  329.  
  330. (set ToDo1      (askoptions (choices #cyberprefs)
  331.                 (prompt #tools)
  332.                 (help #tools)
  333.                 (default 1)
  334.         )
  335. )
  336.  
  337. (if (IN ToDo1 0)
  338.   (
  339.     (set CyberDrawer (askdir (prompt #Where #wheredtprefs)
  340.                              (help   #Where #wheredtprefs)
  341.                  (default "SYS:Prefs")
  342.                      )
  343.     )
  344.  
  345.     (if (> (exists (tackon CyberDrawer "PCDT") ) 0)
  346.       (
  347.         (set vernum1 (getversion (tackon CyberDrawer "PCDT")))
  348.         (set ver1 (/ vernum1 65536)) (set rev1 (- vernum1 (* ver1 65536) ) )
  349.  
  350.         (copyfiles (source (tackon CyberDrawer "PCDT"))
  351.                            (dest CyberDrawer) (infos)
  352.                            (newname (cat "PCDT" ver1 "." rev1))
  353.         )
  354.  
  355.       )
  356.     )
  357.  
  358.     (copyfiles (source "Prefs/PCDT")  (dest CyberDrawer) (infos) (optional "force" "askuser" "nofail"))
  359.     (set @each-name "gtlayout.library")
  360.     (set WHERE wherelibs)  (set TO (tackon dtdest "libs")) 
  361.     (if (= ja 1) (backup) )
  362.     (copylib (source (tackon "libs" @each-name)) (dest WHERE) (optional "nofail") (infos) )    
  363.  
  364.  
  365.   )
  366. )
  367.  
  368.  
  369. ;********************************************************************************
  370. ; END  
  371. ;********************************************************************************
  372. (if (= ja 1)
  373.  (message (cat #backup1 "'" (tackon whereback "Datatypes") "'\n\n" #backup2)) 
  374. )
  375.  
  376. (if (> (exists ("c:multiview")) 0) (set #mpath "c:") )
  377. (if (> (exists ("sys:Utilities/multiview")) 0) (set #mpath "sys:Utilities") )
  378. (run (cat "run " #mpath "/multiview Readme") )
  379.  
  380.